home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 011 / alias.lbr / alias.asm
Assembly Source File  |  1985-06-03  |  2KB  |  81 lines

  1. ;  ALIAS.ASM by Susan Glinert-Cole   15 Sep 84
  2. ;
  3. ;  Original source code copied from "CREATIVE COMPUTING", Jan 85, Vol 11 # 1
  4. ;     Source code modified to include signon reflecting its origin and 
  5. ;         to give the command syntax. 
  6. ;
  7. ;  This program renames any subdirectory within the current directory
  8. ;    only.  Command syntax:
  9. ;                          ALIAS (old name) (new name)
  10. ;
  11. ;
  12. ;                             [][][][][]
  13. ;                  [ MACROS ]    
  14. ;                      [][][][][]
  15. ;
  16. PRINT        MACRO    TEXT        ; This macro takes a string offset
  17.         LEA    DX,TEXT        ;   as an argument and prints the
  18.         MOV    AH,09        ;   string.
  19.         INT    21H        
  20.         ENDM            ; PRINT MACRO
  21. ;
  22. CODESEG        SEGMENT    PARA    PUBLIC    'code'
  23. ;
  24.          ORG    100H
  25. MAIN        PROC    FAR
  26.         ASSUME    CS:CODESEG,DS:CODESEG
  27.         ASSUME  ES:CODESEG,SS:CODESEG
  28.         JMP    BEGIN
  29. ;
  30. ;                             [][][][][]
  31. ;                  [  DATA  ]    
  32. ;                      [][][][][]
  33. ;
  34. CR        EQU    0DH
  35. LF        EQU    0AH
  36. FCB        EQU    5CH
  37. EFCB        EQU    FCB-7
  38. ATTRIBUTE    EQU    FCB-1
  39. SIGNON_MSG    DB    'ALIAS.COM  15 Sept 84 by Susan Glinert-Cole',CR,LF
  40.         DB    '  Copyright (c) 1984 by Ahl Computing, Inc.',CR,LF
  41.         DB      'Renames only the next level of subdirectories . .'
  42.         DB    CR,LF,'     Use: ALIAS (old name) (new name)'
  43.         DB    CR,LF,LF,'$'
  44. OK_MSG        DB    'Renamed the Subdirectory',CR,LF,'$'
  45. ERR_MSG        DB    'Failed to find the Subdirectory',CR,LF,'$'
  46. ;
  47. ;                         [][][][][][][][]
  48. ;                      [ MAIN PROGRAM ]    
  49. ;                  [][][][][][][][]
  50. ;
  51. BEGIN:        PUSH    DX        ;  Standard program introduction
  52.         MOV    AX,0
  53.         PUSH    AX
  54.         PRINT   SIGNON_MSG
  55.         MOV    BX,EFCB        ;  Address of EFCB in PSP
  56.         MOV    BYTE PTR[BX],0FFH
  57.         MOV    BX,ATTRIBUTE    ;  Address of attribute byte
  58.         MOV    BYTE PTR[BX],10H
  59. ;
  60. ;  Rename the subdirectory
  61. ;
  62.         MOV    DX,EFCB        ;  Point to EFCB
  63.         MOV    AH,17H
  64.         INT     21H
  65. ;
  66. ;  Print message
  67. ;
  68.         CMP    AL,0FFH
  69.         JE    ERROR
  70.         PRINT   OK_MSG
  71.         JMP    EXIT
  72. ;
  73. ERROR:        PRINT   ERR_MSG
  74. ;=========================================================================
  75. ;
  76. EXIT:        RET
  77. MAIN        ENDP
  78. CODESEG        ENDS
  79.         END    MAIN
  80.  
  81.